load("@rules_java//java:defs.bzl", "java_library")

package(
    default_applicable_licenses = ["//:license"],
    default_visibility = ["//visibility:public"],
)

java_library(
    name = "optimizer",
    exports = ["//optimizer/src/main/java/dev/cel/optimizer"],
)

java_library(
    name = "optimizer_builder",
    exports = ["//optimizer/src/main/java/dev/cel/optimizer:optimizer_builder"],
)

java_library(
    name = "ast_optimizer",
    exports = ["//optimizer/src/main/java/dev/cel/optimizer:ast_optimizer"],
)

java_library(
    name = "optimization_exception",
    exports = ["//optimizer/src/main/java/dev/cel/optimizer:optimization_exception"],
)

java_library(
    name = "mutable_ast",
    exports = ["//optimizer/src/main/java/dev/cel/optimizer:mutable_ast"],
)

java_library(
    name = "optimizer_impl",
    testonly = 1,
    visibility = ["//optimizer/src/test/java/dev/cel/optimizer:__pkg__"],
    exports = ["//optimizer/src/main/java/dev/cel/optimizer:optimizer_impl"],
)
